package cn.wolfcode.wolf2w.util;

import cn.wolfcode.wolf2w.domain.Destination;
import cn.wolfcode.wolf2w.domain.Region;
import org.springframework.data.domain.*;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Query;


import java.util.List;

/**
 *分页工具抽取
 */
public class DBHelper {

    public static <T> Page <T> query(MongoTemplate temporal, Class<T> clz, Pageable pageable,Query query){


        // 查出目的地数据条数
        Long totalCount = temporal.count(query, clz);

        if (totalCount == null){
            return Page.empty();
        }

        // 加入查询条件
        query.with(pageable);

        // 查询数据库中目的地的数据
        List<T> list = temporal.find(query, clz);

        return new PageImpl(list,pageable,totalCount);
    }
 }
